package com.kunter.admin.eo;

import java.util.ArrayList;
import java.util.List;
import java.util.Date;

/**
 * 类名称：admin_user表的查询条件类AdminUserExample
 * 内容摘要：admin_user表的各个元素的查询条件
 * @author 工具生成
 * @version 1.0 2015年1月1日
 */
public class AdminUserExample {

    /** 排序 */
    protected String orderByClause;
    /** 去重 */
    protected boolean distinct;
    /** 条件集合 */
    protected List<Criteria> oredCriteria;
    /** 分页 当前条数 */
    protected Integer currentSize;
    /** 分页 每页显示条数 */
    protected Integer pageSize;

    public AdminUserExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    /**
     * 取得 排序
     * @return 排序
     */
    public String getOrderByClause() {
        return orderByClause;
    }

    /**
     * 设定 排序
     * @param orderByClause 排序
     */
    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    /**
     * 取得 去重
     * @return 去重
     */
    public boolean getDistinct() {
        return distinct;
    }

    /**
     * 设定 去重
     * @param distinct 去重
     */
    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    /**
     * 取得 条件集合
     * @return 条件集合
     */
    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    /**
     * 设定 条件集合
     * @param oredCriteria 条件集合
     */
    public void setOredCriteria(List<Criteria> oredCriteria) {
        this.oredCriteria = oredCriteria;
    }

    /**
     * 取得 分页 当前条数
     * @return 分页 当前条数
     */
    public Integer getCurrentSize() {
        return currentSize;
    }

    /**
     * 设定 分页 当前条数
     * @param currentSize 分页 当前条数
     */
    public void setCurrentSize(Integer currentSize) {
        this.currentSize = currentSize;
    }

    /**
     * 取得 分页 每页显示条数
     * @return 分页 每页显示条数
     */
    public Integer getPageSize() {
        return pageSize;
    }

    /**
     * 设定 分页 每页显示条数
     * @param pageSize 分页 每页显示条数
     */
    public void setPageSize(Integer pageSize) {
        this.pageSize = pageSize;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }
    
protected abstract static class GeneratedCriteria {

        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andidIsNull() {
            addCriterion("au.id is null");
            return (Criteria) this;
        }

        public Criteria andidIsNotNull() {
            addCriterion("au.id is not null");
            return (Criteria) this;
        }

        public Criteria andidEqualTo(String value) {
            addCriterion("au.id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andidNotEqualTo(String value) {
            addCriterion("au.id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andidGreaterThan(String value) {
            addCriterion("au.id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andidGreaterThanOrEqualTo(String value) {
            addCriterion("au.id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andidLessThan(String value) {
            addCriterion("au.id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andidLessThanOrEqualTo(String value) {
            addCriterion("au.id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andidIn(List<String> values) {
            addCriterion("au.id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andidNotIn(List<String> values) {
            addCriterion("au.id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andidLike(String value) {
            addCriterion("au.id like", "%" + value + "%", "id");
            return (Criteria) this;
        }

        public Criteria andidNotLike(String value) {
            addCriterion("au.id not like", "%" + value + "%", "id");
            return (Criteria) this;
        }

        public Criteria andidBetween(Integer value1, Integer value2) {
            addCriterion("au.id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andidNotBetween(Integer value1, Integer value2) {
            addCriterion("au.id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andadminUserIsNull() {
            addCriterion("au.admin_user is null");
            return (Criteria) this;
        }

        public Criteria andadminUserIsNotNull() {
            addCriterion("au.admin_user is not null");
            return (Criteria) this;
        }

        public Criteria andadminUserEqualTo(String value) {
            addCriterion("au.admin_user =", value, "adminUser");
            return (Criteria) this;
        }

        public Criteria andadminUserNotEqualTo(String value) {
            addCriterion("au.admin_user <>", value, "adminUser");
            return (Criteria) this;
        }

        public Criteria andadminUserGreaterThan(String value) {
            addCriterion("au.admin_user >", value, "adminUser");
            return (Criteria) this;
        }

        public Criteria andadminUserGreaterThanOrEqualTo(String value) {
            addCriterion("au.admin_user >=", value, "adminUser");
            return (Criteria) this;
        }

        public Criteria andadminUserLessThan(String value) {
            addCriterion("au.admin_user <", value, "adminUser");
            return (Criteria) this;
        }

        public Criteria andadminUserLessThanOrEqualTo(String value) {
            addCriterion("au.admin_user <=", value, "adminUser");
            return (Criteria) this;
        }

        public Criteria andadminUserIn(List<String> values) {
            addCriterion("au.admin_user in", values, "adminUser");
            return (Criteria) this;
        }

        public Criteria andadminUserNotIn(List<String> values) {
            addCriterion("au.admin_user not in", values, "adminUser");
            return (Criteria) this;
        }

        public Criteria andadminUserLike(String value) {
            addCriterion("au.admin_user like", "%" + value + "%", "adminUser");
            return (Criteria) this;
        }

        public Criteria andadminUserNotLike(String value) {
            addCriterion("au.admin_user not like", "%" + value + "%", "adminUser");
            return (Criteria) this;
        }

        public Criteria andadminUserBetween(Integer value1, Integer value2) {
            addCriterion("au.admin_user between", value1, value2, "adminUser");
            return (Criteria) this;
        }

        public Criteria andadminUserNotBetween(Integer value1, Integer value2) {
            addCriterion("au.admin_user not between", value1, value2, "adminUser");
            return (Criteria) this;
        }

        public Criteria andadminPassIsNull() {
            addCriterion("au.admin_pass is null");
            return (Criteria) this;
        }

        public Criteria andadminPassIsNotNull() {
            addCriterion("au.admin_pass is not null");
            return (Criteria) this;
        }

        public Criteria andadminPassEqualTo(String value) {
            addCriterion("au.admin_pass =", value, "adminPass");
            return (Criteria) this;
        }

        public Criteria andadminPassNotEqualTo(String value) {
            addCriterion("au.admin_pass <>", value, "adminPass");
            return (Criteria) this;
        }

        public Criteria andadminPassGreaterThan(String value) {
            addCriterion("au.admin_pass >", value, "adminPass");
            return (Criteria) this;
        }

        public Criteria andadminPassGreaterThanOrEqualTo(String value) {
            addCriterion("au.admin_pass >=", value, "adminPass");
            return (Criteria) this;
        }

        public Criteria andadminPassLessThan(String value) {
            addCriterion("au.admin_pass <", value, "adminPass");
            return (Criteria) this;
        }

        public Criteria andadminPassLessThanOrEqualTo(String value) {
            addCriterion("au.admin_pass <=", value, "adminPass");
            return (Criteria) this;
        }

        public Criteria andadminPassIn(List<String> values) {
            addCriterion("au.admin_pass in", values, "adminPass");
            return (Criteria) this;
        }

        public Criteria andadminPassNotIn(List<String> values) {
            addCriterion("au.admin_pass not in", values, "adminPass");
            return (Criteria) this;
        }

        public Criteria andadminPassLike(String value) {
            addCriterion("au.admin_pass like", "%" + value + "%", "adminPass");
            return (Criteria) this;
        }

        public Criteria andadminPassNotLike(String value) {
            addCriterion("au.admin_pass not like", "%" + value + "%", "adminPass");
            return (Criteria) this;
        }

        public Criteria andadminPassBetween(Integer value1, Integer value2) {
            addCriterion("au.admin_pass between", value1, value2, "adminPass");
            return (Criteria) this;
        }

        public Criteria andadminPassNotBetween(Integer value1, Integer value2) {
            addCriterion("au.admin_pass not between", value1, value2, "adminPass");
            return (Criteria) this;
        }

        public Criteria andadminNickIsNull() {
            addCriterion("au.admin_nick is null");
            return (Criteria) this;
        }

        public Criteria andadminNickIsNotNull() {
            addCriterion("au.admin_nick is not null");
            return (Criteria) this;
        }

        public Criteria andadminNickEqualTo(String value) {
            addCriterion("au.admin_nick =", value, "adminNick");
            return (Criteria) this;
        }

        public Criteria andadminNickNotEqualTo(String value) {
            addCriterion("au.admin_nick <>", value, "adminNick");
            return (Criteria) this;
        }

        public Criteria andadminNickGreaterThan(String value) {
            addCriterion("au.admin_nick >", value, "adminNick");
            return (Criteria) this;
        }

        public Criteria andadminNickGreaterThanOrEqualTo(String value) {
            addCriterion("au.admin_nick >=", value, "adminNick");
            return (Criteria) this;
        }

        public Criteria andadminNickLessThan(String value) {
            addCriterion("au.admin_nick <", value, "adminNick");
            return (Criteria) this;
        }

        public Criteria andadminNickLessThanOrEqualTo(String value) {
            addCriterion("au.admin_nick <=", value, "adminNick");
            return (Criteria) this;
        }

        public Criteria andadminNickIn(List<String> values) {
            addCriterion("au.admin_nick in", values, "adminNick");
            return (Criteria) this;
        }

        public Criteria andadminNickNotIn(List<String> values) {
            addCriterion("au.admin_nick not in", values, "adminNick");
            return (Criteria) this;
        }

        public Criteria andadminNickLike(String value) {
            addCriterion("au.admin_nick like", "%" + value + "%", "adminNick");
            return (Criteria) this;
        }

        public Criteria andadminNickNotLike(String value) {
            addCriterion("au.admin_nick not like", "%" + value + "%", "adminNick");
            return (Criteria) this;
        }

        public Criteria andadminNickBetween(Integer value1, Integer value2) {
            addCriterion("au.admin_nick between", value1, value2, "adminNick");
            return (Criteria) this;
        }

        public Criteria andadminNickNotBetween(Integer value1, Integer value2) {
            addCriterion("au.admin_nick not between", value1, value2, "adminNick");
            return (Criteria) this;
        }

        public Criteria andadminMailIsNull() {
            addCriterion("au.admin_mail is null");
            return (Criteria) this;
        }

        public Criteria andadminMailIsNotNull() {
            addCriterion("au.admin_mail is not null");
            return (Criteria) this;
        }

        public Criteria andadminMailEqualTo(String value) {
            addCriterion("au.admin_mail =", value, "adminMail");
            return (Criteria) this;
        }

        public Criteria andadminMailNotEqualTo(String value) {
            addCriterion("au.admin_mail <>", value, "adminMail");
            return (Criteria) this;
        }

        public Criteria andadminMailGreaterThan(String value) {
            addCriterion("au.admin_mail >", value, "adminMail");
            return (Criteria) this;
        }

        public Criteria andadminMailGreaterThanOrEqualTo(String value) {
            addCriterion("au.admin_mail >=", value, "adminMail");
            return (Criteria) this;
        }

        public Criteria andadminMailLessThan(String value) {
            addCriterion("au.admin_mail <", value, "adminMail");
            return (Criteria) this;
        }

        public Criteria andadminMailLessThanOrEqualTo(String value) {
            addCriterion("au.admin_mail <=", value, "adminMail");
            return (Criteria) this;
        }

        public Criteria andadminMailIn(List<String> values) {
            addCriterion("au.admin_mail in", values, "adminMail");
            return (Criteria) this;
        }

        public Criteria andadminMailNotIn(List<String> values) {
            addCriterion("au.admin_mail not in", values, "adminMail");
            return (Criteria) this;
        }

        public Criteria andadminMailLike(String value) {
            addCriterion("au.admin_mail like", "%" + value + "%", "adminMail");
            return (Criteria) this;
        }

        public Criteria andadminMailNotLike(String value) {
            addCriterion("au.admin_mail not like", "%" + value + "%", "adminMail");
            return (Criteria) this;
        }

        public Criteria andadminMailBetween(Integer value1, Integer value2) {
            addCriterion("au.admin_mail between", value1, value2, "adminMail");
            return (Criteria) this;
        }

        public Criteria andadminMailNotBetween(Integer value1, Integer value2) {
            addCriterion("au.admin_mail not between", value1, value2, "adminMail");
            return (Criteria) this;
        }

        public Criteria andadminStatusIsNull() {
            addCriterion("au.admin_status is null");
            return (Criteria) this;
        }

        public Criteria andadminStatusIsNotNull() {
            addCriterion("au.admin_status is not null");
            return (Criteria) this;
        }

        public Criteria andadminStatusEqualTo(String value) {
            addCriterion("au.admin_status =", value, "adminStatus");
            return (Criteria) this;
        }

        public Criteria andadminStatusNotEqualTo(String value) {
            addCriterion("au.admin_status <>", value, "adminStatus");
            return (Criteria) this;
        }

        public Criteria andadminStatusGreaterThan(String value) {
            addCriterion("au.admin_status >", value, "adminStatus");
            return (Criteria) this;
        }

        public Criteria andadminStatusGreaterThanOrEqualTo(String value) {
            addCriterion("au.admin_status >=", value, "adminStatus");
            return (Criteria) this;
        }

        public Criteria andadminStatusLessThan(String value) {
            addCriterion("au.admin_status <", value, "adminStatus");
            return (Criteria) this;
        }

        public Criteria andadminStatusLessThanOrEqualTo(String value) {
            addCriterion("au.admin_status <=", value, "adminStatus");
            return (Criteria) this;
        }

        public Criteria andadminStatusIn(List<String> values) {
            addCriterion("au.admin_status in", values, "adminStatus");
            return (Criteria) this;
        }

        public Criteria andadminStatusNotIn(List<String> values) {
            addCriterion("au.admin_status not in", values, "adminStatus");
            return (Criteria) this;
        }

        public Criteria andadminStatusLike(String value) {
            addCriterion("au.admin_status like", "%" + value + "%", "adminStatus");
            return (Criteria) this;
        }

        public Criteria andadminStatusNotLike(String value) {
            addCriterion("au.admin_status not like", "%" + value + "%", "adminStatus");
            return (Criteria) this;
        }

        public Criteria andadminStatusBetween(Integer value1, Integer value2) {
            addCriterion("au.admin_status between", value1, value2, "adminStatus");
            return (Criteria) this;
        }

        public Criteria andadminStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("au.admin_status not between", value1, value2, "adminStatus");
            return (Criteria) this;
        }

        public Criteria andcreateTimeIsNull() {
            addCriterion("au.create_time is null");
            return (Criteria) this;
        }

        public Criteria andcreateTimeIsNotNull() {
            addCriterion("au.create_time is not null");
            return (Criteria) this;
        }

        public Criteria andcreateTimeEqualTo(Date value) {
            addCriterion("au.create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andcreateTimeNotEqualTo(Date value) {
            addCriterion("au.create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andcreateTimeGreaterThan(Date value) {
            addCriterion("au.create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andcreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("au.create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andcreateTimeLessThan(Date value) {
            addCriterion("au.create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andcreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("au.create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andcreateTimeIn(List<Date> values) {
            addCriterion("au.create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andcreateTimeNotIn(List<Date> values) {
            addCriterion("au.create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andcreateTimeLike(Date value) {
            addCriterion("au.create_time like", "%" + value + "%", "createTime");
            return (Criteria) this;
        }

        public Criteria andcreateTimeNotLike(Date value) {
            addCriterion("au.create_time not like", "%" + value + "%", "createTime");
            return (Criteria) this;
        }

        public Criteria andcreateTimeBetween(Integer value1, Integer value2) {
            addCriterion("au.create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andcreateTimeNotBetween(Integer value1, Integer value2) {
            addCriterion("au.create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }    
}    
public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }    
}    
public static class Criterion {

        private String condition;
        private Object value;
        private Object secondValue;
        private boolean noValue;
        private boolean singleValue;
        private boolean betweenValue;
        private boolean listValue;
        private String typeHandler;
        protected Criterion() {
            super();
        }

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }    
}
}